home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 10 / The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso / PC_SIGCD / 20 / 9 / DISK2092.ZIP / RBBS-LIT.ZIP / LIT / CORVUS.LIT < prev    next >
Text File  |  1990-01-13  |  5KB  |  193 lines

  1. *[CORVUS.LIT]*****************************************************************
  2. * Description: Select Corvus for multi node file locking.                    *
  3. * RBBS-PC Level: CPC17.3                                                √ AM *
  4. * Module Affected: RBBSSUB2.BAS                                              *
  5. * Selection Option: MULTINODE = CORVUS                                       *
  6. * Additional files: None                                                     *
  7. ******************************************************************************
  8. 21996 CLOSE 1
  9.      OPEN "I",1,ZConfigFileName$
  10. '
  11. ' *****************************************************************************
  12. ' *  UNLOCK MESSAGES                                                          *
  13. ' *****************************************************************************
  14. '
  15.       GOSUB 25000
  16.       CALL OpenMsg
  17.       RETURN
  18. '
  19. ' *****************************************************************************
  20. ' *  LOCK MESSAGE FILE                                                        *
  21. ' *****************************************************************************
  22. '
  23. 22000 IF ZMsgFileLock = ZTrue THEN _
  24.          RETURN
  25.       ZMsgFileLock = ZTrue
  26.       MID$(ZLockStatus$,1,2) = "LM"
  27.       ZSubParm = 2
  28.       CALL Line25
  29.       ZLockFileName$ = ZActiveMessageFile$
  30.       IF ZNetworkType > 0 THEN GOTO 22200
  31.       RETURN
  32. 22100
  33. 22200 CALL BreakFileName (ZActiveMessageFile$,Drive$,Prefix$,Ext$,ZFalse)
  34.       WasCC$ = CHR$(1) + _
  35.             LEFT$(Prefix$ + SPACE$(8),8)
  36.       GOSUB 28000
  37.       IF WasCT = 0 THEN _
  38.          RETURN
  39.       CALL DelayTime (1)
  40.       GOTO 22200
  41. 22300
  42. 22400
  43. 22500
  44. 25000 IF NOT ZMsgFileLock THEN _
  45.          RETURN
  46.       ZMsgFileLock = ZFalse
  47.       MID$(ZLockStatus$,1,2) = "UM"
  48.       ZSubParm = 2
  49.       CALL Line25
  50.       ZLockFileName$ = ZActiveMessageFile$
  51.       IF ZNetworkType > 0 THEN GOTO 25200
  52.       RETURN
  53. 25100
  54. 25200 CALL BreakFileName (ZActiveMessageFile$,Drive$,Prefix$,Ext$,ZFalse)
  55.       WasCC$ = CHR$(17) + _
  56.             LEFT$(Prefix$ + SPACE$(8),8)
  57.       GOSUB 28000
  58.       IF WasCT = 128 THEN _
  59.          RETURN
  60.       CALL DelayTime (1)
  61.       GOTO 25200
  62. 25300
  63. 25400
  64. 25500
  65. 26000 IF ZUserFileLock = ZTrue THEN _
  66.          RETURN
  67.       ZUserFileLock = ZTrue
  68.       MID$(ZLockStatus$,4,2) = "LU"
  69.       ZSubParm = 2
  70.       CALL Line25
  71.       ZLockFileName$ = ZActiveUserFile$
  72.       IF ZNetworkType > 0 THEN GOTO 26200
  73.       RETURN
  74. 26100
  75. 26200 CALL BreakFileName (ZActiveUserFile$,Drive$,Prefix$,Ext$,ZFalse)
  76.       WasCC$ = CHR$(1) + _
  77.             LEFT$(Prefix$ + SPACE$(8),8)
  78.       GOSUB 28000
  79.       IF WasCT = 0 THEN _
  80.          RETURN
  81.       CALL DelayTime (1)
  82.       GOTO 26200
  83. 26300
  84. 26500 IF ZUserBlockLock = ZTrue THEN _
  85.          RETURN
  86.       ZUserBlockLock = ZTrue
  87.       ZBlk = (ZUserFileIndex / 4) + .26
  88.       MID$(ZLockStatus$,7,2) = "LB"
  89.       ZSubParm = 2
  90.       CALL Line25
  91.       IF ZNetworkType > 0 THEN GOTO 26700
  92.       RETURN
  93. 26600
  94. 26700 WasCC$ = CHR$(1) + _
  95.             "BLK" + _
  96.             RIGHT$("0000" + MID$(STR$(ZBlk),2),5)
  97.       GOSUB 28000
  98.       IF WasCT = 0 THEN _
  99.          RETURN
  100.       CALL DelayTime (1)
  101.       GOTO 26700
  102. 26750
  103. 26800
  104. 26900
  105. 27000 IF NOT ZUserFileLock THEN _
  106.          RETURN
  107.       ZUserFileLock = ZFalse
  108.       MID$(ZLockStatus$,4,2) = "UU"
  109.       ZSubParm = 2
  110.       CALL Line25
  111.       ZLockFileName$ = ZActiveUserFile$
  112.       IF ZNetworkType > 0 THEN GOTO 27200
  113.       RETURN
  114. 27100
  115. 27200 CALL BreakFileName (ZActiveUserFile$,Drive$,Prefix$,Ext$,ZFalse)
  116.       WasCC$ = CHR$(17) + _
  117.             LEFT$(Prefix$ + SPACE$(8),8)
  118.       GOSUB 28000
  119.       IF WasCT = 128 THEN _
  120.          RETURN
  121.       CALL DelayTime (1)
  122.       GOTO 27200
  123. 27300
  124. 27500 IF NOT ZUserBlockLock THEN _
  125.          RETURN
  126.       ZUserBlockLock = ZFalse
  127.       ZBlk = (ZUserFileIndex / 4) + .26
  128.       MID$(ZLockStatus$,7,2) = "UB"
  129.       ZSubParm = 2
  130.       CALL Line25
  131.       IF ZNetworkType > 0 THEN GOTO 27700
  132.       RETURN
  133. 27600
  134. 27700 WasCC$ = CHR$(17) + _
  135.             "BLK" + _
  136.             RIGHT$("0000" + MID$(STR$(ZBlk),2),5)
  137.       GOSUB 28000
  138.       IF WasCT = 128 THEN _
  139.          RETURN
  140.       CALL DelayTime (1)
  141.       GOTO 27700
  142. 27750
  143. 27800
  144. 27900
  145. 28000 WasCC$ = ZLineFeed$ + _
  146.             CHR$(0) + _
  147.             CHR$(11) + _
  148.             WasCC$
  149.       CALL CDSend(WasCC$)
  150.       CALL CDRecv(ZWasCN$)
  151.       WasCT = ASC(MID$(ZWasCN$,3,1))
  152.       IF WasCT => 128 THEN _
  153.          CALL LPrnt("CORVUS LOCK FAIL",1) : _
  154.          ZSubParm = -1
  155. 28010 WasCT = ASC(MID$(ZWasCN$,4,1))
  156.       IF WasCT => 129 THEN _
  157.          CALL LPrnt("CORVUS FULL",1) : _
  158.          ZSubParm = -1
  159.       RETURN
  160. 28100
  161. 29000 IF LockedEn$ = ZWasEN$ THEN _
  162.          RETURN
  163.       LockedEn$ = ZWasEN$
  164.       MID$(ZLockStatus$,10,2) = "LD"
  165.       ZSubParm = 2
  166.       CALL Line25
  167.       ZLockFileName$ = ZWasEN$
  168.       IF ZNetworkType > 0 THEN GOTO 29010
  169. 29010 RETURN
  170. 29100
  171. 29300
  172. 29500 IF LockedEn$ <> ZWasEN$ THEN _
  173.          RETURN
  174.       LockedEn$ = ""
  175.       MID$(ZLockStatus$,10,2) = "UD"
  176.       ZSubParm = 2
  177.       CALL Line25
  178.       ZLockFileName$ = ZWasEN$
  179. 29510 RETURN
  180. 29600
  181. 29650
  182. 29700
  183. 29710
  184. 29720
  185. 29730
  186. 29800
  187. 29810
  188. 29820
  189. 29830 END SUB
  190. 30000 SUB InitIBM STATIC
  191.         END SUB
  192. 30020
  193.